dynamic programming
A classification of algorithms. Although it is a frequently used term, there is no clear definition, and it is a very abstract concept that includes several algorithms that look very different from each other.
I felt it would be good to clarify "what is the definition area and value of this DP" around the time of solving J
After solving about 10 DP problems, I was thinking that it would be better to clarify "what is the domain of definition and what is the value of DP" for solving DP problems. Interval DP has the interval as the domain, probability DP has the probability as the value, bit DP is just an implementation technique of DP with subset as the domain, too messy!
And during implementation, the technique "the definition region is too large, so it is exchanged for a value region" is sometimes used DP_E. ---
This page is auto-translated from /nishio/動的計画法. If you looks something interesting but the auto-translated English is not good enough to understand it, feel free to let me know at @nishio_en. I'm very happy to spread my thought to non-Japanese readers.